package me.zhengjie.kwService;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import me.zhengjie.pojo.dto.ExamTeacherAddReplaceDto;
import me.zhengjie.pojo.dto.SaveExamTeacherDto;
import me.zhengjie.pojo.entity.ExamTeacher;
import me.zhengjie.pojo.export.ExamTeacherExport;
import me.zhengjie.util.BaseResponse;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author Long
 * @date 2021/6/28 17:01
 */
public interface ExamTeacherService extends IService<ExamTeacher> {
    /**
     * 查询所有考场监考老师表信息
     *
     * @return
     */
    List<ExamTeacher> selectList();

    Page<ExamTeacher> findAllExamTeacher(Integer pageNo, Integer pageSize);

    /**
     * 考场监考教师信息导出
     *
     * @param response
     * @param examTeachers 要导出的监考教师数据
     */
    BaseResponse export(HttpServletResponse response, List<ExamTeacher> examTeachers);

    /**
     * 考场监考教师信息导入
     *
     * @param examTeacherExports 导入的监考教师信息
     */
    void saveImportList(List<ExamTeacherExport> examTeacherExports, Integer examId);

    /**
     * 新增监考教室安排信息及教师占用信息
     *
     * @param dto 监考教师安排信息
     * @return
     */
    BaseResponse saveExamTeacher(SaveExamTeacherDto dto);

    /**
     * 给监考老师安排替补老师
     *
     * @param dto 教师安排id、替补教师id
     * @return
     */
    BaseResponse addReplaceTeacher(ExamTeacherAddReplaceDto dto);
}
